package com.xinwei.leetcode;

import com.sun.xml.internal.ws.api.model.wsdl.WSDLOutput;
import com.xinwei.leetcode.二叉树.TreeNode;
import com.xinwei.leetcode.数组.*;
import com.xinwei.leetcode.链表.ListNode;
import com.xinwei.leetcode.链表._203_移除链表元素;
import com.xinwei.leetcode.链表._83_删除排序链表中的重复元素;
import org.w3c.dom.ls.LSOutput;


import java.util.*;


public class main {
    public static void main(String[] args) {
//        int i = leetcode35.searchInsert1(new int[]{1, 3, 5, 6}, 2);
//        Asserts.test(i == 1, 35);
//
//        Asserts.test(leetcode53.maxSubArray(new int[]{1}) == 1, 53);
//
//
//        ListNode node5 = new ListNode(5,null);
//        ListNode node4 = new ListNode(4,node5);
//        ListNode node3 = new ListNode(3,node4);
//        ListNode node2 = new ListNode(2,node3);
//        ListNode node1 = new ListNode(1,node2);
//        System.out.println(node1.next);
//        ListNode node = _203_移除链表元素.removeElements(node1, 5);
//        System.out.println(node);
//
//        int[] plusOne = _66_加一.plusOne(new int[]{8,8,7,6,5,4,3,2,1,0});
//        System.out.println(Arrays.toString(plusOne));
//
//        int[] sortArray = _912_排序数组.sortArray(new int[]{5, 4, 1,8,5,6,2});
//        System.out.println(Arrays.toString(sortArray));
//
//        System.out.println(_118_杨辉三角.generate(5));
//
//        System.out.println(_121_买卖股票的最佳时机.maxProfit3(new int[]{3,2,6,5,0,3}));
//
//        System.out.println(_136_只出现一次的数字.singleNumber1(new int[]{4,1,2,1,2}));
//
//        System.out.println(Arrays.toString(_167_两数之和Ⅱ输入有序数组.twoSum(new int[]{2,7,11,15}, 9)));
//
//        System.out.println(_219_存在重复元素II.containsNearbyDuplicate(new int[]{1,0,1,1},
//        1));
//
//        System.out.println(_228_汇总区间.summaryRanges2(new int[]{0,2,3,4,6,8,9}));
//
//        System.out.println(_228_汇总区间.test(new int[]{0,2,3,4,6,8,9}));

//        System.out.println(Arrays.toString(_283_移动零.moveZeroes1(new int[]{0,1,0,3,12})));

//        System.out.println(Arrays.toString(_912_排序数组.sortArray3(new int[]{5,2,3,1,1,5,8,95,75,12})));

//        System.out.println(Arrays.toString(_912_排序数组.sortArray4(new int[]{5,2,3,1,10,20,303,102,11})));

//        List<List<Integer>> lists = _15_三数之和.threeSum(new int[]{-1,0,1,2,-1,-4});
//        for (List<Integer> list : lists) {
//            System.out.println(list);
//        }

//        System.out.println(_16_最接近的三数之和.threeSumClosest(new int[]{1,1,1,1},
//         0));

//        System.out.println(Arrays.toString(_31_下一个排列.nextPermutation(new int[]{1,2,3,8,5,4})));

//        System.out.println(_33_搜索旋转排序数组.search(new int[]{3,1}, 3));

//        System.out.println(Arrays.toString(_34_在排序数组中查找元素的第一个和最后一个位置.searchRange(new int[]{2,2}, 2)));

        System.out.println(_39_组合总和.combinationSum(new int[]{2,3,5}, 8));
    }
}
